import { Message } from "element-ui";
// import constant from '@/config/constant'
// import transferApi from '@/plugins/util/transferApi'
import { getToken } from "@/plugins/utils/auth";
function interceptor(instance) {
  instance.interceptors.request.use(
    function (config) {
      const token = getToken();
      if (token !== null && token !== "") {
        config.headers.token = token;
        config.headers["Authorization"] = token
      }
      // let {
      //   restful,
      //   url
      // } = config
      // // config.url = transferApi(restful, url)
      // let token = localStorage.getItem('jwt-token')
      // if (token !== null && token !== '') {
      //   config.headers.Authorization = token
      // }

      return config;
    },
    function (error) {
      return Promise.reject(error);
    }
  );
  instance.interceptors.response.use(
    function (response) {
      // console.log('response',response)
      // 对响应数据做点什么
      // if (response.data && response.data.token && response.data.user) {
      //   localStorage.setItem('jwt-token', response.data.token)
      // }
      // if (response.data.errCode && response.data.errCode !== 1000 && response.data.errMessage) {
      //   Message.error(response.data.errMessage)
      // }

      // console.log('response',response)
      return response;
    },
    function (error) {
      console.log("error", error);
      let code = error.response.status;
      switch (code) {
        case 500:
          Message.error("操作失败，请稍后重试");
          break;
        case 404:
          // Message.error("参数校验失败");
          break;
        case 401:
          Message.error("暂未登陆或者token已过期");
          break;
        case 403:
          Message.error("没有权限");
          break;
      }
      // switch (error.response.status) {
      //   case 401:
      //     Message.error("抱歉，您没有访问权限！");
      //     break;
      //   case 404:
      //     Message.error("抱歉，找不到资源！");
      //     break;
      //   case 504:
      //     Message.error("请求超时！");
      //     break;
      //   default:
      //     Message.error("请求失败！");
      //     break;
      // }
      // if (error.response.data.errCode) {

      //   // if (error.response.data.errMessage) {
      //   //   Message.error(error.response.data.errMessage)
      //   // }
      //   // if (error.response.data.errCode === constant.errCodeMap.get('TOKEN_OVERDUE') || error.response.data.errCode === constant.errCodeMap.get('TOKEN_MISSING')) {
      //   //   setTimeout(() => {
      //   //     location.href = '/#/login'
      //   //   }, 1000)
      //   // }
      // } else if (error.response.status === 500) {
      //   Message.error('服务器错误')
      // }
      // if (error.response.data.errCode === ) {

      // }
      // 对响应错误做点什么
      return Promise.reject(error);
    }
  );
  // return instance
}

export default interceptor;
